Nowadays, with increasing popularity of data processing devices such as computers, intelligent mobile phones, palm PCs, tablet PCs, etc., all kinds of software that runs on the data processing devices are booming.
In these data processing devices, a main technical solution for managing software is using a software management system. A software management system is software that manages software on a data processing device. In the industry, currently commonly used software managers for example are 360 software steward, Kingsoft software steward, etc. Currently, the software managers mainly have functions of: software repository, software upgrade, software uninstallation, download management, etc.
Usually, a software repository in a software management system integrates most of excellent commonly used software in the industry for users to select to install and upgrade. To provide users with more abundant and more comprehensive software installation and upgrade, currently a software repository supports more and more software, covering various categories such as instant messaging, audio-video playing, webpage browsing, input method, etc., and the total number of the software is up to thousands and even to tens of thousands. Among so much software, the quality of the software may be good or bad. For a user, he tends to hope that a software management system can recommend software with a high quality and more targeted for him. Therefore, currently most of the software management systems are integrated with a function of software recommendation.
In traditional art, a software management system recommends software based on the number of times of being downloaded or hotness of the software and software that has been installed. A way or channel of recommendation may include: pushing hot target software by using a rank list in a software repository, a recommendation page of special topics in a software repository, a tooltip, etc.
However, for existing solutions of recommending target software, relevance between recommended software and a specific user is low, which results in that recommendation may not be that accurate, and target software that meets usage features of a user may not be accurately recommended.